你可以通过创建 order 对象完成一笔订单的下单和付款动作。一个 order 对象可能包含多笔(多渠道)的 charge 对象。 order 对象支持优惠券使用,子商户收款,分润等功能(均为可选),请参考相应的章节获取更多详情。
注 :服务端在传 Order 对象到客户端前,请先使用各 SDK 自带的序列化方式(比如 Java 的 .toString())将对象转换成 JSON 字符串。
| 属性 | 描述 | 
|---|---|
| id string | 订单对象 ID,由 Ping++ 生成。 | 
| object string | 值为 "order"。 | 
| created timestamp | 创建时间,用 Unix 时间戳表示。 | 
| livemode boolean | 是否是 live 模式。 | 
| app string | 订单应用。对应 app对象的id,查看 如何获取App ID。 | 
| status string | 目前订单支持状态。分为待支付:created、已付款:paid、存在退款:refunded、已取消:canceled。 | 
| paid boolean | 是否已付款。当订单的已付金额 - 已退金额 ≥ 应付金额(amount_paid - amount_refunded ≥ actual_amount)时,该值变为 true 。 | 
| refunded boolean | 是否存在退款信息,无论退款是否成功。 | 
| uid string | 消费者 user对象的id。 | 
| amount int | 原始金额,单位为分。 | 
| coupon_amount int | 优惠券折扣金额,单位为分。 | 
| actual_amount int | 应付金额,单位为分。值为原始金额减去优惠券折扣金额( amount-coupon_amount)。 | 
| merchant_order_no string | 商户订单号,适配每个渠道对此参数的要求,必须在商户的系统内唯一。长度限制 8~20 位,要求数字或字母,不允许特殊字符。 | 
| amount_paid int | 已付金额,值为所有包含已付款的 charge对象的amount总额,单位为分。 | 
| amount_refunded int | 已退金额(成功退款的金额),值为所有包含有退款的 charge对象的amount_refunded总额,单位为分。 | 
| currency string | 3 位 ISO 货币代码,小写字母,人民币为 cny。 | 
| subject string | 商品标题。 | 
| body string | 商品描述信息。 | 
| client_ip ip address | 发起支付请求客户端的 IP 地址,支持 IPv4、IPv6 格式。 | 
| time_paid timestamp | 付款完成时间,用 Unix 时间戳表示。 | 
| time_expire timestamp | 订单过期时间,用 Unix 时间戳表示。时间范围在订单创建后的 1 分钟到 7 天,默认值为 1 天,创建时间以 Ping++ 服务器时间为准。如果订单到达过期时间仍未完成付款,则会自动变为 canceled 状态。 | 
| coupon string | 使用的 coupon对象的id。 | 
| available_balance int | 订单支付前,消费者 user的可用余额,单位为分。 | 
| receipt_app string | 收款方 app对象的id。订单使用收款方应用的渠道参数进行支付。 | 
| service_app string | 服务方 app对象的id。表示承接该交易服务的应用,由服务方和平台确定订单的层级链都能查询到该order对象。 | 
| available_methods list | 可使用支付渠道列表。如果收款方是子商户,会展示该子商户可使用的支付渠道。客户端可以根据此列表展示合适的支付渠道供用户选择。 | 
| charge_essentials hash | 最近一次请求的支付所需的支付要素,用于客户端打开支付控件、支付页面、显示二维码等。包括 channel、transaction_no、credential、extra等要素。 | 
| charges list | 关联的 charge对象列表,其中charge对象不包含refund对象。 | 
| description string | 订单附加说明,最多 255 个 Unicode 字符。 | 
| metadata hash | 详见 元数据。 | 
{
    "id": "2001708140000017551",
    "object": "order",
    "created": 1502695388,
    "livemode": false,
    "paid": false,
    "refunded": false,
    "status": "created",
    "app": "app_1Gqj58ynP0mHeX1q",
    "uid": "user_007",
    "available_balance": 0,
    "merchant_order_no": "2017081400000006",
    "amount": 1000,
    "actual_amount": 800,
    "amount_refunded": 0,
    "amount_paid": 0,
    "coupon_amount": 200,
    "currency": "cny",
    "subject": "Your Subject",
    "body": "Your Body",
    "client_ip": "127.0.0.1",
    "time_paid": null,
    "time_expire": 1502781019,
    "coupon": "300317081415225500002001",
    "description": null,
    "metadata": {},
    "charge_essentials": {},
    "receipt_app": "app_1Gqj58ynP0mHeX1q",
    "service_app": "app_1Gqj58ynP0mHeX1q",
    "available_methods": [
        "balance"
    ],
    "charges": {
        "object": "list",
        "url": "/v1/charges",
        "has_more": false,
        "data": []
    }
}